Electronics Production--
Tasks for the week:
-This week assignment is to create an in-circuit programmer using the Milling Machine to create the board, stuff the board and then program the in-circuit programmer to create a FabTinyISP (In System Programmer).
Group assignment:
Characterize the specifications of your PCB production process.
Machine Details
I am not electronic background, I am fast time using this machine and I learned machine software,design,programing and all the things.
Introduction of machine
-Bed area - 200*150mm
First button is used to ON/OFF the machine.
View - We can view our board between milling process.
UP - We can move tool (endmill in z-axis) in upward direction.
Down - We can move tool (endmill in z-axis) in downward direction.
Madella Milling Machine.
Characterize the PCB Machine
Software: For Controlling and giving command on Modela MDX20 we are using Fab Module from Linux system
Hardware: I'm using Roland MDX20 Modela for my PCB making, which has Working area 203.2 x 152.4 mm within the dimension around 476 x 381 x 305 mm, Z stroke is 60.5; Spindle motor 10W DC motor; spindle speed 6500 rpm.
PCB Placing:
For placing PCB board on on the Modela working area, first I used foam tape than attached 3mm acrylic sheet. On acrylic sheet I placed the PCB board by double sided tape tightly.Then I tested around the PCB is it fixed or not.
We use the Madella MDX 20 to machine our PCB. Madella is a Desktop milling machine that is capable of milling wood, wax, MDX,and circuit board blanks. It is compatible with most of the 2D and 3D CAD softwares. It has a small bed which moves in the Y-axis, a Tool head which moves in the X-axis and the end effector which moves in the Z-axis. It supports many milling bits and is versatile. The machine itself has a tiny foot print and can be placed on a table.
PCB Fabrication
Milling and Cutting the PCB
In this week, we learned about how to make our own Printed Circuit Board to power the electronics we will design. A Printed Circuit board is a neatly designed board, on which we can fix our electronic components. The PCBs are made on a copper clad sheet, which are like copper coated on a non-conducting material. We can selectively remove the copper to create the traces (path ways). There are many ways to make a PCB which include Milling, etching etc. We will be focusing on the Milling process.
Cutting Logic: How to cut with the Madella MDX 20
PCB milling using Fab module.
Modella MDX 20 behaves like an ordinary 3-Axis CNC machines, Each axis is driven by a stepper motor and the cutting program tells the machine where to go by giving coordinates to the machine in real time.
What the software does is that it converts the .png image we give into a series of tool paths, these tool paths are defined by their coordinates. The .png image is a black and white layout of the board, and the black portions will be milled and the white portion is where the copper will be left.
Got to the terminal and run fab Now the fab module will open and the select the input format to .png and select the output you want depending on your machine (modlella MDX 20).
On the top menu select the process you want to use. For milling traces, select the milltraces(1/64) option. Now click load .png to load your traces file and click make path Now you can see the path the tool is going to move through. You can change the setting, I'm leaving it in the defaults. Now if you click make.rml and click send rml
Setting up the machine bit
ENDMILL - 1/64" i.e. 0.4mm is used for traces the board and 1/32" i.e 0.8mm is used for cut the board. We have to fix the end mill with the help of allen key.
Fabrication ISP
Precautions
I'm writing the precautions from all the mistakes me and my friends made.
1 Always double check your cutting speed and depth before cutting.
2 Never click move to Xmin and Ymin, when you don,t know the z value. The tool might hit the bed and break.
3 When setting the zero on Z-axis, tighten both screws of the tool holder properly. We broke one bit because the tool was not fit correctly, it slipped, dug into the board and broke.
4 Be careful when clicking move to Xmin and Ymin after setting zero position on Z-axis, If there is some machine error, the tool will hit the bed and break.
5 Never touch the Up and Down button when changing the tool.
6 When changing the tool, put a sponge bed below it so that it does not fall and hit the bed and break.
7 Always remember your Xmin and Ymin values so that in case the power goes out you can resume from the starting position.
My Experiments.
Milling Traces.
Milling Cut.
Traces Setting
I decided to use the FabTinyISP for this weeks assignment. I would love to give a detailed explanation on why I chose this board over the other ones on a deep electronics level, but I really don,t know. The real reason is that this board had a simple layout, the fewest components, plus it hAfter slowly bringing the Z- Axis down and putting the 1/64th inch bit on the tool holder,
I set the zero of Z-Axis by letting the tool touch the board and tightening it in place. Ensure that both the screws are tight.
Final milling the traces of FabTinyISP.
Cut complete.
I have limited experience with soldering components and this is the first time I am working with SMD components, they are so incredibly tiny. First begin by soldering the ATtiny on the board, as this is the most difficult part. Orient the IC using the small dot provided on the body. Using the schematic from the webpage, I aligned and soldered the IC on the board. When Soldering put some flux on top of the board so that the solder will stick properly. Similarly I aligned and placed the components on the board as per the layout.
PCB layout of FabTiny USB.
How to solder SMD components
I was finding it difficult to solder these components until our instructors showed us a method. It goes like this, first put a small amount of solder where you are going to fix your component. Next correctly place the component by holding with the tweezers with your left hand. Now using your right hand bring the soldering iron close to the leg and touch it until the solder melts and it forms a joint. Wait a couple of seconds so that the joint will cool, let go of the part and now it will be fixed securely.
Repeat the steps for accurate soldering. Adding some flux will help the solder stick to the board properly.
PCB layout of FabTiny USB.
Assembling the PCB
1x ATtiny45 or ATtiny85
2x 1k om resistors
2x 499 om resistors
2x 49 om resistors
2x 3.3v zener diodes
1x red LED
1x green LED
1x 100nF capacitor
1x 2x3 pin header
Gorp assignment
Specifications of PCB production process
We are learning about soldings-
Making the ISP cable
We need to make a cable to connect our programmer to the board we are trying to program. This step is fairly easy.
Programming the FabTinyISP
Once you finish soldering the components, It is time to test the connections and program the board. Look carefully at the board to see if all the connections are proper and that no components are sticking into the air. Double check the components and their orientations against the schematic to ensure that the parts are placed in their proper positions.
If any components are loose or misplaced, de-solder them and put them in their correct places.
Lighting up for the first time.
If everything checks out, proceed to plug it into the USB port of your laptop. If the red LED lights up, your good to go, if not use the multi-meter to check the continuity of the circuit connections. Thankfully, mine lit up in my first attempt, I was lucky. The next step is programming the chip with the right firmware.
Software Installation
Before you can build and program the firmware onto your board, you need to set up your development environment.
For Ubuntu and other Debian-based distributions, enter the following command, followed by your password when prompted:
sudo apt install avrdude gcc-avr avr-libc make
Installing avrdude.
Build the Firmware
1 Download the firmware source code and extract the zip file (on Linux, unzip fts_firmware_bdm_v1.zip).3>
2 Open the terminal and go to the directory by using the ,CD, command.
3 Once in the directory type as make and click enter. This will build the .hex file that will get programmed onto the ATtiny45. When the command completes, you should now have a file called fts_firmware.hex.
Making Hex file.
Program the ATtiny45
Programming the FabTinyUSB
Plug the board into a USB port. USB2.0 is preferred over 3.0 if you have one, and use an extension cable so that you do not put strain on your board especially if your port is upside down. If you installed the red LED, it should be lit up now. If not, check the solder jumper and make sure that it is bridged. If your computer complains about a USB device drawing too much power, unplug the board and check for shorts.
Go to terminal and run the command ,make flash,. This will erase the target chip and program its flash memory with the contents of the .hex file you built before. You should see several progress bars while avrdude erases, programs, and verifies the chip.
If something went wrong, check
Go to the terminal and run the make fuses command. This will set up all of the fuses except the one that disables the reset pin.
In Linux, type lsusb in the terminal, which will list USB devices. If you see a "Multiple Vendors USBtiny" device, then the programming has worked. If it didn't, the dmesg command might provide more info on what went wrong. Most probably it will be a bad connection between the board and the Port. Look up more debugging steps in the FabTinyISP Documentation page.
If everything I check out it,s time to Blow the Reset Fuse.
We need to change the bit that will turn the ATtiny45's reset pin into a GPIO pin.This will disable our ability to reprogram this ATtiny45 in the future, hence make sure everything is working before doing this. Connect your ISP programmer to your board one more time, and in the Terminal run make rstdisbl.
Learning Outcomes-
In this assignment I learned about Electronics Production which is really best for experiment the same Electronics, Good experience in group work.
To download my files click -:here